15 DIM LV%(100,8),LD$(100,1),ID$(50),IL%(50),SC%(50),IW(50),L%(100)
17 DIM WD$(100),W%(100,1),FW%(2)
18 DIM FB%(50),RE%(50)
20 GOSUB 18000: GOSUB 19000
50 SP = 128: SPEED= SP
60 HOME : PRINT
100 REM START
108 XX = 1
110 IF SC% > = 1000 THEN PRINT "YOU WIN!": PRINT "END AFTER "T" TURNS.": PRINT "FINAL SCORE: 1000 OUT OF 1000.": SPEED= 255: END
115 IF XX = 1 THEN GOSUB 1000
120 GOSUB 500
125 XX = XX +1: IF XX >5 THEN XX = 1
130 IF FW%(0) = 0 THEN PRINT "WHAT?": GOTO 110
140 ON FW%(0) GOSUB 2000,3000,4000,5000,5500,6000,7000,8000,9000,9500
142 IF FW%(0) >10 THEN ON FW%(0) -10 GOSUB 13000,13500,14500,15000,15500,16000,16500,10000,17000
145 IF FW%(0) = 99 THEN PRINT "QUIT AFTER "T" TURNS.": PRINT "FINAL SCORE: "SC%" OUT OF 1000.": SPEED= 255: END
150 T = T +1
160 GOTO 110
500 REM HANDLE INPUT
502 POKE -16368,0
505 FW%(0) = 0:FW%(1) = 0
506 FW%(2) = 0
507 PRINT
510 INPUT "-->";I$
515 IF I$ = "" THEN 510
520 WD$ = "":A = 1
530 IF MID$ (I$,A,1) = " " THEN 600
540 WD$ = WD$ + MID$ (I$,A,1)
550 A = A +1: IF A < = LEN(I$) THEN 530
600 REM FOUND WORD
610 FOR B = 1 TO NW: IF WD$(B) = WD$ THEN GOSUB 650
620 NEXT B:WD$ = "":A = A +1
630 IF A > LEN(I$) THEN RETURN
640 GOTO 530
650 IF W%(B,1) >100 AND FW%(1) < >0 THEN RETURN
651 IF W%(B,1) >100 AND FW%(0) = 0 THEN FW%(0) = 1
654 FOR C = 0 TO 1
655 IF C = 1 AND FW%(C) >0 AND (W%(B,C) = 2 OR W%(B,C) = 23 OR W%(B,C) = 21) THEN FW%(2) = W%(B,C): GOTO 670
660 IF W%(B,C) > = 0 THEN FW%(C) = W%(B,C)
670 NEXT C
680 RETURN
1000 REM PRINT DESC
1005 PRINT
1006 IF L = 11 OR L = 38 THEN 1010
1007 IF L >5 AND LO% = 0 THEN PRINT "IT IS TOO DARK TO SEE.": RETURN
1008 IF L >5 THEN I = 1: GOSUB 11000: IF R = 0 THEN PRINT "IT IS TOO DARK TO SEE.": RETURN
1010 PRINT LD$(L,L%(L))
1014 PRINT
1015 L%(L) = 1
1020 PRINT "OPEN PATHWAYS: ";: FOR A = 1 TO 8: IF LV%(L,A) < >0 THEN PRINT DN$(A);
1025 NEXT A
1030 PRINT
1040 PRINT "VISIBLE OBJECTS:"
1045 X = 0
1050 FOR A = 1 TO NI
1055 IF A = 2 AND IL%(A) = L THEN GOSUB 5600: GOTO 1070
1057 IF A = 23 AND IL%(A) = L THEN GOSUB 5700: GOTO 1070
1060 IF IL%(A) = L THEN PRINT " "ID$(A):X = 1
1070 NEXT A
1080 IF X = 0 THEN PRINT "THERE ARE NONE."
1100 IF L = 11 AND T% = 0 THEN PRINT "THERE IS A FEROCIOUS TIGER HERE!"
1110 IF L = 11 AND T% < >0 THEN PRINT "A CONTENTED-LOOKING TIGER DOZES HERE."
1120 IF L = 38 AND SM% = 0 THEN PRINT "THE SMURK IS HERE!"
1130 IF L = 38 AND SM% < >0 THEN PRINT "THE DEAD BODY OF THE SMURK LIES HERE."
1490 RETURN
2000 REM MOVE
2005 IF FW%(1) <101 OR FW%(1) >108 THEN PRINT "GO WHERE?": RETURN
2010 X = LV%(L,FW%(1) -100)
2020 IF X <0 OR X >NL THEN PRINT "NOT DEFINED YET.": RETURN
2030 IF X = 0 THEN PRINT "YOU CAN'T GO THAT WAY.": RETURN
2040 IF L = 3 AND X = 3 THEN IF RND(1) <.37 THEN X = 2
2045 A = 0
2050 IF X = 38 THEN I = 7: GOSUB 11000: IF R >1 THEN A = 100
2055 IF A = 100 THEN PRINT "THE SMURK SEES THE POISON AND SAYS: YOU ARE TRYING TO POISON ME, HUH? I WILL KILL YOU FOR THAT! HE POINTS AT YOU AND YOU COLLAPSE INTO ASHES."
2060 IF A = 100 THEN PRINT "STOP AFTER "T" TURNS.": PRINT "FINAL SCORE: "SC%" OUT OF 1000.": SPEED= 255: END
2200 L = X:XX = 1: RETURN
3000 REM PICK UP
3005 I = FW%(1)
3007 IF I = 51 OR I = 52 THEN PRINT "DON'T BE RIDICULOUS!": RETURN
3010 IF I = 21 AND (L = 39 OR L = 40) THEN 13500
3020 IF I = 4 AND L = 17 THEN 13500
3030 IF I <1 OR I >NI THEN PRINT "NO SUCH THING HERE.": RETURN
3040 IF IL%(I) = -2 AND RE%(I) = 2 THEN I = 2
3045 GOSUB 11000: IF R = 0 THEN PRINT "NO SUCH THING HERE.": RETURN
3050 IF IL%(I) = -3 THEN PRINT "IT CAN NOT BE SEPARATED FROM THE OTHER STUFF IN THE BOWL.": RETURN
3060 IF R = 2 THEN PRINT "YOU ARE ALREADY CARRYING IT.": RETURN
3080 GOSUB 3500
3095 IF RE%(I) = 2 THEN 3300
3097 IF IL%(I) = -3 AND RE%(I) >0 THEN MX% = MX% -1
3100 IL%(I) = 0
3110 PRINT "OK."
3140 RETURN
3300 REM INTO BOTTLE
3310 IF IL%(2) < >0 THEN PRINT "YOU NEED A BOTTLE.": RETURN
3320 B = 1
3330 IF IL%(B) = -2 THEN PRINT "THE BOTTLE IS FULL.": RETURN
3340 B = B +1: IF B < = NI THEN 3330
3350 IL%(I) = -2: GOTO 3110
3500 REM PICKUP CONDITIONS
3510 IF IW(I) <0 THEN PRINT "IT IS SECURELY FASTENED.": POP : RETURN
3520 IF L = 38 AND I = 13 AND SM% = 0 THEN PRINT "THE SMURK WON'T LET YOU!": POP : RETURN
3530 IF L = 11 AND FW%(1) = 19 AND T% = 0 THEN PRINT "THE TIGER IS IN THE WAY!": POP : RETURN
3540 IF I = 8 THEN PRINT "THE GHOUL WON'T LET YOU!": POP : RETURN
3580 IF SC%(I) >0 THEN SC% = SC% +SC%(I)/2:SC%(I) = -SC%(I)
3585 IF SC%(I) <0 AND L = 1 THEN SC% = SC% -SC%(FW%(1))/ -2
3590 RETURN
4000 REM DROP
4005 I = FW%(1)
4010 IF I <1 OR I >NI THEN PRINT "YOU ARE NOT CARRYING IT.": RETURN
4012 IF I = 7 AND L = 40 THEN 4020
4015 IF IL%(I) = -2 AND RE%(I) = 2 THEN I = 2
4020 GOSUB 11000
4024 IF IL%(I) = -3 AND RE%(I) >0 AND MX% >1 THEN PRINT "IT CAN NOT BE SEPARATED FROM THE OTHER STUFF IN THE BOWL.": RETURN
4030 IF R <2 THEN PRINT "YOU ARE NOT CARRYING IT.": RETURN
4032 IF I = 7 AND L = 40 THEN PRINT "IT GOES INTO THE WATER. SOON THERE IS A DREADFUL SHRIEK COMING FROM THE WEST, FOLLOWED BY A TOTAL SILENCE.":SM% = 1:IL%(7) = -1:SC% = SC% +400: RETURN
4037 IF IL%(FW%(1)) = -3 AND RE%(FW%(1)) >0 THEN MX% = MX% -1
4040 IL%(I) = L
4050 PRINT "OK."
4055 IF I = 20 AND L = 11 THEN PRINT "THE TIGER GOBBLES IT UP AND CURLS IN A CORNER SLEEPING CONTENTFULLY.":T% = 1:IL%(I) = -1:SC% = SC% +100
4057 IF RE%(I) = 2 THEN PRINT "IT SEEPS INTO THE GROUND AND IS LOST.":IL%(I) = -1: RETURN
4060 IF SC%(I) <0 AND L = 1 THEN SC% = SC% +SC%(I)/ -2
4070 RETURN
5000 REM LOOK
5010 XX = 1
5015 L%(L) = 0
5020 RETURN
5500 REM INV
5505 X = 0
5510 PRINT "YOU ARE CARRYING: "
5520 FOR A = 1 TO NI
5525 IF A = 2 AND IL%(A) = 0 THEN GOSUB 5600: GOTO 5540
5527 IF A = 23 AND IL%(A) = 0 THEN GOSUB 5700: GOTO 5540
5530 IF IL%(A) = 0 THEN PRINT " "ID$(A):X = 1
5540 NEXT A
5550 IF X = 0 THEN PRINT "NOTHING."
5560 RETURN
5600 REM BOTTLE
5605 X = 1
5610 B = 1
5620 IF IL%(B) = -2 THEN 5640
5630 B = B +1: IF B >NI THEN PRINT " EMPTY BOTTLE": RETURN
5635 GOTO 5620
5640 PRINT " BOTTLE OF ";ID$(B): RETURN
5700 REM BOWL
5705 X = 1
5710 B = 1
5720 IF IL%(B) = -3 THEN 5750
5730 B = B +1: IF B >NI THEN PRINT " BOWL": RETURN
5740 GOTO 5720
5750 PRINT " BOWL CONTAINING: "
5760 FOR C = 1 TO NI
5770 IF C = 2 AND IL%(C) = -3 THEN PRINT " ";: GOSUB 5600: GOTO 5790
5780 IF IL%(C) = -3 THEN PRINT " "ID$(C)
5790 NEXT C: RETURN
6000 REM SAVE GAME
6005 SPEED= 255
6010 INPUT "GAME #";A
6015 IF A <0 THEN 6010
6020 PRINT D$"OPEN GAME."NA$",L500"
6030 PRINT D$"WRITE GAME."NA$",R"A
6040 PRINT L: FOR B = 1 TO NI: PRINT IL%(B): NEXT B: PRINT T
6050 PRINT SC%: PRINT SM%: PRINT T%
6060 FOR B = 1 TO NI: PRINT SC%(B): NEXT B
6070 PRINT LO%: PRINT MX%
6080 PRINT PN%
6090 PRINT D$"CLOSE"
6100 SPEED= 128: RETURN
6500 REM LOAD GAME
6510 ONERR GOTO 6900
6520 INPUT "GAME #";A
6525 IF A <0 THEN 6520
6530 PRINT D$"OPEN GAME."NA$",L500"
6540 PRINT D$"READ GAME."NA$",R"A
6550 INPUT L: FOR B = 1 TO NI: INPUT IL%(B): NEXT B: INPUT T
6560 INPUT SC%: INPUT SM%: INPUT T%
6565 FOR B = 1 TO NI: INPUT SC%(B): NEXT B
6570 INPUT LO%: INPUT MX%
6580 INPUT PN%
6590 PRINT D$"CLOSE"
6595 POKE 216,0
6600 RETURN
6900 REM ONERR
6905 POKE 216,0
6910 PRINT D$"CLOSE"
6920 PRINT "GAME NOT FOUND."
6930 RUN
7000 REM MIX
7005 IF IL%(23) < >0 AND IL%(23) < >L THEN PRINT "YOU HAVE NO MIXING BOWL.": RETURN
7007 IF IL%(28) = -3 THEN IL%(28) = IL%(4):IL%(4) = -3
7010 X = 0
7020 FOR A = 3 TO 6: IF IL%(A) < > -3 THEN X = 1
7030 NEXT A: IF X < >0 THEN 7100
7040 IF IL%(19) < > -3 THEN 7100
7045 PRINT "OK."
7050 PRINT "YOU HAVE A POISONOUS MIXTURE!"
7060 FOR A = 3 TO 6:IL%(A) = -1: NEXT A:IL%(19) = -1
7070 IL%(7) = -3
7080 RETURN
7100 REM
7105 PRINT "OK."
7110 PRINT "NOTHING UNUSUAL IS PRODUCED.": RETURN
8000 REM READ
8002 IF FW%(1) <1 OR FW%(1) >NI THEN PRINT "NO SUCH THING HERE.": RETURN
8005 I = FW%(1): GOSUB 11000: IF R = 0 THEN PRINT "NO SUCH THING HERE.": RETURN
8010 IF FW%(1) = 15 THEN I = 16: GOSUB 11000: IF R = 0 THEN PRINT "IT IS IN SANSKRIT.": RETURN
8020 IF FW%(1) = 15 THEN PRINT : PRINT "IT SAYS:": PRINT " A SMURK IS NEARLY INVULNERABLE. THE ONLY KNOWN WAY TO KILL ONE IS TO POUR POISON IN ITS WATER SUPPLY. A SUBSTANCE";
8030 IF FW%(1) = 15 THEN PRINT "POISONOUS TO A SMURK CAN BE PRODUCED USING THE FOLLOWING INGREDIENTS:": PRINT " TIGER LILIES": PRINT " OIL": PRINT " VINEGAR": PRINT " BROCCOLI": PRINT " MAGIC POWDER #"PN%
8040 IF FW%(1) = 15 THEN PRINT "PLACE ALL THESE TOGETHER IN A BOWL AND MIX.": PRINT : RETURN
8490 PRINT "NOTHING SPECIAL.": RETURN
9000 REM POUR
9010 IF FW%(1) <1 OR FW%(1) >NI THEN PRINT "NO SUCH THING HERE.": RETURN
9020 I = FW%(1): GOSUB 11000: IF R = 0 THEN PRINT "NO SUCH THING HERE.": RETURN
9030 Z = 0:X = L
9040 IF I < >2 AND I < >23 AND I < >0 AND IL%(I) <0 THEN Z = IL%(I)
9050 IF I = 23 THEN Z = -3
9060 IF I = 2 THEN Z = -2
9070 IF Z = 0 THEN PRINT "I DON'T UNDERSTAND.": RETURN
9080 IF FW%(2) = 0 THEN 9150
9085 IF FW%(2) = 21 AND (L = 38 OR L = 40) THEN 9150
9090 IF FW%(2) = 23 AND (IL%(23) < >L AND IL%(23) < >0) THEN PRINT "THERE IS NO BOWL HERE.": RETURN
9100 IF FW%(2) = 23 AND Z = -3 THEN PRINT "IT IS ALREADY IN IT.": RETURN
9110 IF FW%(2) = 2 AND Z = -2 THEN PRINT "IT IS ALREADY IN IT.": RETURN
9130 IF Z = -2 AND FW%(2) = 23 THEN X = -3: GOTO 9160
9140 IF Z = -3 THEN GOSUB 9270
9150 IF Z = -2 AND (IL%(23) = L OR IL%(23) = 0) AND FW%(2) = 0 THEN INPUT "DO YOU WANT TO POUR IT INTO THE BOWL? (YES/NO) ";I$: IF LEFT$(I$,1) = "Y" THEN X = -3
9160 L1 = 1:L2 = NI
9170 IF I < >2 AND I < >23 THEN L1 = I:L2 = I
9180 FOR A = L1 TO L2: IF IL%(A) < >Z THEN 9260
9190 IL%(A) = X: PRINT "OK."
9200 IF Z = -3 AND RE%(A) = 1 AND MX% >1 AND L1 = L2 THEN PRINT "IT CANNOT BE SEPARATED FROM THE OTHER STUFF IN THE BOWL.":IL%(A) = Z
9205 IF X < >L THEN 9240
9210 IF A = 20 AND L = 11 THEN PRINT "THE TIGER GOBBLES UP THE STEAK AND CURLSIN A CORNER SLEEPING CONTENTFULLY.":T% = 1:IL%(A) = -1:SC% = SC% +100
9220 IF A = 7 AND L = 40 THEN PRINT "IT GOES INTO THE WATER. SOON THERE IS A DREADFUL SHRIEK COMING FROM THE WEST, FOLLOWED BY A TOTAL SILENCE.":SM% = 1:IL%(A) = -1:SC% = SC% +400
9230 IF RE%(A) = 2 AND IL%(A) = L THEN PRINT "THE "ID$(A)" SEEPS INTO THE GROUND.":IL%(A) = -1
9240 IF SC%(A) <0 AND L = 1 THEN SC% = SC% +SC%(A)/ -2
9250 IF Z = -3 AND RE%(A) >0 AND IL%(A) < >Z THEN MX% = MX% -1
9260 NEXT : RETURN
9270 REM
9280 J = I:I = 2: GOSUB 11000:I = J: IF R = 0 THEN PRINT "THERE IS NO BOTTLE HERE.": POP : RETURN
9290 NF = 0
9300 A = 0: FOR B = 1 TO NI: IF IL%(B) = -3 THEN A = A +1
9310 IF IL%(B) = -3 AND FB%(B) = 0 THEN NF = 1
9320 NEXT B: IF A >1 THEN PRINT "YOU CAN'T FIT ALL THAT IN THE BOTTLE.": POP : RETURN
9330 IF NF = 1 THEN PRINT "IT WON'T FIT!": POP : RETURN
9340 X = -2: RETURN
9500 REM PUT
9510 IF FW%(1) <0 OR FW%(1) >NI THEN PRINT "PUT WHAT IN WHAT?": RETURN
9520 IF FW%(2) <0 OR FW%(2) >NI THEN PRINT "PUT WHAT IN WHAT?": RETURN
9530 IF (FW%(1) = 4 AND L = 17) OR (FW%(1) = 21 AND (L = 38 OR L = 40)) THEN FW%(1) = FW%(2): GOTO 13500
9540 I = FW%(2): GOSUB 11000: IF R = 0 THEN PRINT "NO SUCH THING HERE.": RETURN
9550 IF FW%(1) <1 OR FW%(1) >NI THEN PRINT "NO SUCH THING HERE.": RETURN
9560 IF FW%(2) = 23 THEN 9680
9565 IF FW%(2) = 21 AND (L = 38 OR L = 40) THEN 9000
9570 IF FW%(2) < >2 THEN PRINT "IT CAN NOT BE DONE.": RETURN
9580 F = 0: FOR A = 1 TO NI: IF IL%(A) = -2 THEN PRINT "THE BOTTLE IS FULL!":F = 1
9590 NEXT A: IF F = 1 THEN RETURN
9600 IF FW%(1) = 2 THEN PRINT "YOU CAN'T PUT IT IN ITSELF!": RETURN
9610 I = FW%(1):X = IL%(I): GOSUB 11000: IF R = 0 THEN PRINT "NO SUCH THING HERE.": RETURN
9620 IF X = L THEN GOSUB 3500
9630 IF X = -3 AND RE%(I) >0 AND MX% >1 THEN PRINT "IT CAN'T BE SEPARATED FROM THE OTHER STUFF IN THE BOWL.": RETURN
9640 IF FB%(I) = 0 THEN PRINT "IT CAN'T FIT IN THE BOTTLE.": RETURN
9650 IF X = -3 AND RE%(I) >0 THEN MX% = MX% -1
9660 PRINT "OK."
9670 IL%(I) = -2: RETURN
9680 REM BOWL
9690 IF FW%(1) <1 OR FW%(1) >NI THEN PRINT "NO SUCH THING HERE.": RETURN
9700 I = FW%(1): IF IL%(I) = -3 THEN PRINT "IT IS ALREADY IN IT!": RETURN
9710 IF I = 23 THEN PRINT "YOU CAN'T PUT IT IN ITSELF!": RETURN
9720 X = IL%(I): GOSUB 11000: IF R = 0 THEN PRINT "NO SUCH THING HERE.": RETURN
9730 IF X = L THEN GOSUB 3500
9740 IF RE%(I) >0 THEN MX% = MX% +1
9750 PRINT "OK."
9760 IL%(I) = -3
9770 IF IL%(22) = -3 AND IL%(3) = -3 THEN PRINT "THE STUFF IN THE BOWL FIZZES....": PRINT "CO2 IS RELEASED, A CHEMICAL REMAINS IN THE BOWL.":IL%(22) = -1:IL%(3) = -1:IL%(27) = -3:MX% = MX% -1
9780 RETURN
10000 REM ON
10010 IF IL%(1) = 0 THEN 10100
10020 IF IL%(1) = -3 AND IL%(23) = 0 THEN 10100
10025 IF IL%(1) = L THEN 10100
10030 PRINT "YOU HAVE NO LAMP.": RETURN
10100 LO% = 1: PRINT "OK.":XX = 1: RETURN
11000 REM IS ITEM PRESENT?
11010 R = 0
11020 IF IL%(I) = L THEN R = 1
11030 IF IL%(I) = 0 THEN R = 2
11050 IF IL%(I) = -2 AND IL%(2) = L THEN R = 1
11060 IF IL%(I) = -2 AND IL%(2) = 0 THEN R = 3
11070 IF IL%(I) = -3 AND IL%(23) = L THEN R = 1
11080 IF IL%(I) = -3 AND IL%(23) = 0 THEN R = 3
11085 IF R = 0 AND I = 21 THEN I = 29: GOTO 11000
11087 IF R = 0 AND I = 4 THEN I = 28: GOTO 11000
11090 RETURN
13000 REM OFF
13010 IF IL%(1) = 0 THEN 13100
13020 IF IL%(1) = -3 AND IL%(23) = 0 THEN 13100
13030 PRINT "YOU HAVE NO LAMP.": RETURN
13100 LO% = 0: PRINT "OK.": RETURN
13500 REM FILL
13510 X = -2
13520 IF FW%(1) = 23 THEN X = -3
13525 I = 2: IF X = -3 THEN I = 23
13527 GOSUB 11000: IF R = 0 THEN PRINT "THERE IS NOTHING TO FILL.": RETURN
13530 IF X = -3 THEN 13600
13540 A = 0: FOR B = 1 TO NI: IF IL%(B) = X THEN A = 1
13550 NEXT B: IF A >0 THEN PRINT "THE BOTTLE IS FULL.": RETURN
13600 REM
13605 A = 0
13610 IF L = 17 THEN A = 4
13620 IF L = 38 OR L = 40 THEN A = 21
13630 IF A = 0 THEN PRINT "NOTHING TO FILL IT WITH.": RETURN
13640 IF IL%(A) = -1 OR IL%(A) = X THEN 13660
13650 IF A = 4 THEN A = 28
13655 IF A = 21 THEN A = 29
13660 IL%(A) = X: PRINT "OK.": RETURN
14500 REM EAT
14510 IF FW%(1) <1 OR FW%(1) >NI THEN PRINT "EAT WHAT?": RETURN
14511 IF RE%(FW%(1)) = 2 THEN PRINT "YOU HAVE TO DRINK IT.": RETURN
14520 I = FW%(1): GOSUB 11000: IF R <2 THEN PRINT "YOU DO NOT HAVE THAT.": RETURN
14530 IF IW(FW%(1)) >2 THEN PRINT "DON'T BE RIDICULOUS.": RETURN
14540 REM
14542 SPEED= 30
14545 PRINT "CHOMP CHOMP CHOMP"
14547 SPEED= SP
14560 PRINT "OK."
14565 IL%(FW%(1)) = -1
14570 RETURN
15000 REM SCORE
15010 PRINT "YOUR SCORE IS "SC%" OUT OF 1000.": RETURN
15500 REM ATTACK
15510 IF L < >38 AND L < >11 THEN PRINT "NOTHING TO ATTACK.": RETURN
15515 IF FW%(1) = 0 THEN 15530
15520 IF (L = 38 AND FW%(1) < >52) OR (L = 11 AND FW%(1) < >51) THEN PRINT "ATTACK WHAT?": RETURN
15530 IF L = 38 THEN PRINT "YOUR ATTACK DOES NOT EVEN TICKLE THE NEARLY INVULNERABLE SMURK. BECAUSE YOU DARE TO ATTACK HIM, HE POINTS AT YOU, AND YOU ARE TURNED INTO A PILE OF ASHES."
15540 IF L = 11 THEN PRINT "THE TIGER FEROCIOUSLY ATTACKS YOU BACK, AND YOU ARE KILLED."
15550 PRINT : PRINT "STOP AFTER "T" TURNS.": PRINT "FINAL SCORE: "SC%" OUT OF 1000."
15560 SPEED= 255: END
16000 REM DRINK
16010 IF FW%(1) <1 OR FW%(1) >NI THEN PRINT "DRINK WHAT?": RETURN
16011 IF RE%(FW%(1)) < >2 THEN PRINT "YOU HAVE TO EAT IT.": RETURN
16020 I = FW%(1): GOSUB 11000: IF R <2 THEN PRINT "YOU DON'T HAVE THAT.": RETURN
16030 IF IW(FW%(1)) >2 THEN PRINT "DON'T BE RIDICULOUS.": RETURN
16040 REM
16042 SPEED= 30
16045 PRINT "SIP SIP SIP"
16047 SPEED= SP
16060 PRINT "OK."
16065 IL%(I) = -1
16067 IF FW%(1) = 7 THEN PRINT "IT IS POISON!!!": PRINT "YOU DROP DEAD.": PRINT "STOP AFTER "T" TURNS.": PRINT "SCORE: "SC%" OUT OF 1000.": SPEED= 255: END
18540 PRINT : PRINT "THERE ARE RUMORED TO BE GREAT TREASURES": PRINT : PRINT "IN THE CAVE, BUT NOBODY HAS YET LIVED": PRINT : PRINT "TO TAKE ANY OUT OF THE CAVE."
18585 PRINT : INPUT "*** HIT RETURN TO CONTINUE ***";I$: HOME
18590 PRINT : PRINT "YOU EXPLORE THE CAVE USING SIMPLE": PRINT : PRINT "SENTENCES, IN THE STANDARD ADVENTURE"
18600 PRINT : PRINT "GAME FASHION, SUCH AS 'ATTACK SMURK' OR": PRINT : PRINT "'READ BOOK'. SENTENCES OF THE FORM:"
18610 PRINT : PRINT "'PUT FISH IN KETTLE' MAY ALSO BE USED."
18620 PRINT : PRINT "'POUR KETTLE' WOULD SPILL THE CONTENTS": PRINT : PRINT "OF THE KETTLE ONTO THE GROUND.": PRINT : PRINT "SUBSTITUTE REAL OBJECTS, AS THERE ARE"
18630 PRINT : PRINT "NO FISH OR KETTLES IN THIS GAME."
18635 PRINT : INPUT "*** HIT RETURN TO CONTINUE ***";I$: HOME
18700 PRINT : PRINT "THE MAIN OBJECT OF THE GAME IS TO KILL": PRINT : PRINT "THE SMURK. ALSO, YOU SHOULD TRY TO"
18705 PRINT : PRINT "GET ALL OF THE TREASURE. YOU ARE": PRINT : PRINT "GIVEN POINTS OUT OF A MAXIMUM SCORE OF"
18710 PRINT : PRINT "1000 AS YOU PROGRESS TOWARD THESE": PRINT : PRINT "OBJECTIVES. YOU GET HALF THE POINTS FOR": PRINT "A TREASURE WHEN YOU FIRST PICK IT UP,"
18715 PRINT : PRINT "AND THE OTHER HALF WHEN IT IS PLACED": PRINT : PRINT "IN THE TENT, WHICH IS YOUR BASE.": PRINT : PRINT "TO FIND OUT YOUR SCORE, YOU CAN TYPE": PRINT : PRINT "'SCORE'."
18735 PRINT : INPUT "*** HIT RETURN TO CONTINUE ***";I$: HOME
18740 PRINT : PRINT "'GO NORTH' MAY BE ABBREVIATED 'N', AND": PRINT : PRINT "THE SAME CAN BE DONE WITH THE OTHER"
18750 PRINT : PRINT "COMPASS DIRECTIONS."
18753 PRINT : PRINT "PLEASE NOTE THAT PASSAGES TWIST, AND": PRINT : PRINT "IF YOU GET SOMEWHERE BY GOING NORTH,": PRINT : PRINT "THAT DOES NOT GUARANTEE THAT YOU": PRINT : PRINT "CAN RETURN BY GOING SOUTH."
18756 PRINT : INPUT "*** HIT RETURN TO CONTINUE ***";I$: HOME
18770 PRINT " SAVE - SAVES GAME TO DISK: YOU WILL BE ASKED TO SPECIFY A GAME NUMBER. THIS CAN BE ANY POSITIVE INTE- GER, AND THE GAME WILL BE SAVED";
18780 PRINT " IN THE RECORD OF THAT NUMBER OF RANDOM-ACCESS DISK FILE 'GAME.SMURK'."
18790 PRINT : INPUT "*** HIT RETURN TO BEGIN ***";I$: HOME : PRINT : RETURN
19000 REM INITIALIZE
19002 PRINT "PLEASE WAIT. INITIALIZING DATA."
19005 FOR A = 1 TO 8: READ DN$(A): NEXT A
19020 A = 1
19025 FOR B = 0 TO 1: READ LD$(A,B): NEXT B: IF LD$(A,0) < >"" THEN A = A +1: GOTO 19025
19027 NL = A -1
19030 FOR A = 1 TO NL: FOR B = 1 TO 8: READ LV%(A,B): NEXT B: NEXT A
19050 A = 1
19060 READ ID$(A),IL%(A),IW(A),SC%(A): IF IL%(A) < > -999 THEN A = A +1: GOTO 19060
19065 NI = A -1
19067 FOR A = 1 TO NI: READ FB%(A),RE%(A): NEXT A
19070 A = 1
19075 READ WD$(A),W%(A,0),W%(A,1): IF WD$(A) < >"" THEN A = A +1: GOTO 19075
19080 NW = A -1
19085 L = 1:T = 1
19090 HOME : PRINT : INPUT "LOAD GAME FROM DISK? (Y/N) ";I$
19092 DUMMY = RND( - PEEK(79) *256 - PEEK(78)): REM RANDOM SEED
19094 PN% = 10 + INT( RND(1) *90)
19100 IF LEFT$(I$,1) = "Y" THEN GOSUB 6500
19120 RETURN
20000 REM DATA
20005 DATA "N ","S ","E ","W ","U ","D ","IN ","OUT"
20030 REM PLACE DESC,SHORT DESC
20040 DATA "YOU ARE IN A TENT.","YOU'RE IN TENT."
20050 DATA "YOU ARE ON A PATH HEADING EAST. A TENT IS NEARBY.","YOU'RE ON PATH BY TENT."
20060 DATA "YOU ARE SOMEWHERE IN THE WOODS.","YOU ARE SOMEWHERE IN THE WOODS."
20070 DATA "YOU ARE IN FRONT OF A CAVE.","YOU'RE BY CAVE."
20080 DATA "YOU ARE IN THE ENTRANCE TO THE CAVE.","YOU'RE IN CAVE ENTRANCE."
20090 DATA "YOU ARE IN A PASSAGEWAY LINED WITH SHELVES. THIS SEEMS TO BE A PANTRY FOR WHOEVER LIVES IN THE CAVE.","YOU'RE IN PANTRY."
20100 DATA "YOU ARE IN A SMALL CIRCULAR ROOM.","YOU'RE IN RUBY ROOM."
20110 DATA "YOU ARE AT A FORK IN THE PASSAGEWAY. YOU CAN SEE A SLIGHT GLIMMER OF LIGHT DOWN THE EAST FORK.","YOU'RE AT FORK."
20120 DATA "THE PASSAGEWAY CURVES TO THE NORTH. YOU ARE IN A NARROW PASSAGEWAY.","YOU'RE IN NARROW PASSAGEWAY."
20130 DATA "YOU COME TO A SMALL COAL-BLACK ROOM. THE PASSAGEWAY ENDS HERE.","YOU'RE IN DIAMOND ROOM."
20140 DATA "THE PASSAGEWAY ENDS AT A MEDIUM-SIZED CHAMBER. A CRACK IN THE CEILING LETS IN A BEAM OF SUNLIGHT.","YOU'RE IN TIGER ROOM."
20150 DATA "YOU ARE IN A N-S PASSAGEWAY.","YOU'RE IN N-S PASSAGEWAY."
20160 DATA "YOU ARE IN AN ENORMOUS CHAMBER THAT STRETCHES OUT OF SIGHT TO THE SOUTH.","YOU'RE AT NORTH END OF WEST CHAMBER."
20170 DATA "YOU ARE AT THE CENTER OF THE CHAMBER.","YOU'RE AT CENTER OF WEST CHAMBER."
20171 DATA "YOU ARE IN A CHAMBER STRETCHING OUT OF SIGHT TO THE NORTH.","YOU'RE IN SOUTH END OF WEST CHAMBER."
20180 DATA "YOU ARE IN A LARGE CAVERN STRETCHING AS FAR AS THE EYE CAN SEE TO THE SOUTH.","YOU'RE AT NORTH END OF EAST CHAMBER."
20190 DATA "YOU ARE IN THE CENTER OF THE CAVERN. THERE IS A POOL OF OIL HERE.","YOU'RE AT POOL OF OIL."
20200 DATA "YOU ARE IN A LARGE CAVERN STRETCHING FURTHER TO THE NORTH THAN YOU CAN SEE.","YOU'RE AT SOUTH END OF EAST CHAMBER."
20201 DATA "YOU ARE IN A SMALL ROOM. A SMALL HOLE EXITS TO THE NORTH.","YOU'RE IN SMALL ROOM."
20202 DATA "YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE."
20203 DATA "YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE.","YOU'RE IN A MAZE."
20204 DATA "YOU ARE AT A DEAD END.","YOU'RE AT DEAD END."
20210 DATA "YOU ARE AT A VAST STAIRWAY HEADING BOTH UP AND DOWN. THERE ARE PASSAGEWAYS IN ALL DIRECTIONS.","YOU'RE BY STAIRWAY."
20220 DATA "YOU ARE IN THE SOUTH SIDE CHAMBER.","YOU'RE IN SOUTH SIDE CHAMBER."
20230 DATA "YOU ARE IN THE EAST SIDE CHAMBER.","YOU'RE IN EAST SIDE CHAMBER."
20240 DATA "YOU ARE IN THE WEST SIDE CHAMBER.","YOU'RE IN WEST SIDE CHAMBER."
20250 DATA "YOU ARE AT THE TOP OF THE STAIRWAY. THERE IS AN ENTRANCE TO A CHAMBER.","YOU ARE AT TOP OF STAIRS."
20260 DATA "YOU ARE IN A ROOM WITH A TABLE IN THE CENTER AND A LARGE ORNAMENTAL CHAIR FASTENED TO THE FLOOR.","YOU'RE IN BOOK ROOM"
20270 DATA "YOU ARE AT THE ENTRANCE TO A CHAMBER WITH A CRIMSON GLOW FROM INSIDE. STRANGE NOISES COME FROM WITHIN.","YOU'RE AT BOTTOM OF STAIRS."
20280 DATA "YOU ARE IN THE SMURK'S CHAMBER! THE CHAMBER IS LIT BY AN EERIE CRIMSON GLOW.A STREAM FLOWS IN THROUGH A HOLE IN THE EAST WALL AND EXITS TO THE WEST.","YOU'RE IN SMURK'S CHAMBER!"
20285 DATA "A N-S PASSAGEWAY MEETS THE PASSAGEWAY COMING FROM THE WEST.","YOU'RE AT AN INTERSECTION."
20290 DATA "THE PASSAGEWAY AHEAD IS BLOCKED BY FALLEN ROCK. A STREAM RUNS IN THE EAST WALL AND OUT THE WEST WALL. AN EERIE CRIMSON GLOW CAN BE SEEN THROUGH THE HOLE IN THE WEST.","YOU'RE BY STREAM."
20300 DATA "YOU ARE IN A STORE SELLING WITCHCRAFT SUPPLIES. A GHOUL IS BEHIND THE COUNTER. A SIGN READS: ALL MAGIC POWDERS 30% OFF! ANOTHER SIGN SAYS: RING BELL FOR SERVICE.","YOU'RE IN STORE."
20310 DATA "YOU ARE AT THE INTERSECTION OF AN E-W PASSAGEWAY AND ONE BRANCHING OFF TO THE NORTH.","YOU'RE AT BRANCH IN PASSAGEWAY."
20990 DATA "",""
21000 REM MOVEMENT
21010 DATA 0,0,0,0,0,0,0,2
21020 DATA 3,3,4,3,0,0,1,0
21030 DATA 3,3,3,3,0,0,0,0
21040 DATA 3,3,0,2,0,0,5,0
21050 DATA 7,6,42,0,0,0,0,4
21060 DATA 5,13,0,0,0,0,0,0
21070 DATA 0,0,0,0,0,0,0,5
21080 DATA 0,42,11,9,0,0,0,0
21090 DATA 10,8,0,0,0,0,0,0
21100 DATA 0,0,0,0,0,0,0,9
21110 DATA 0,0,0,0,0,0,0,8
21120 DATA 42,16,0,0,0,0,0,0
21130 DATA 6,14,0,0,0,0,0,0
21132 DATA 13,15,0,0,0,0,0,0
21134 DATA 14,0,18,19,0,0,0,0
21140 DATA 0,17,12,0,0,0,0,0
21150 DATA 16,18,0,0,0,0,0,0
21160 DATA 17,0,31,15,0,0,0,0
21161 DATA 20,0,15,0,0,0,0,0
21162 DATA 21,22,23,19,24,25,0,0,28,25,20,22,26,24,0,0,27,26,23,22,20,21,0,0
21163 DATA 22,27,20,26,28,24,0,0,21,26,23,27,25,20,0,0
21164 DATA 26,20,24,21,27,27,0,0,24,22,25,21,27,23,0,0
21165 DATA 24,26,22,23,25,25,0,0,21,23,29,21,23,29,0,0